1
00:00:00,550 --> 00:00:05,710
และวิธีแก้ปัญหานี้ เราจะควบคุมคุณภาพคลาสผู้จัดการ เกือบทุกการเรียกใช้ที่ไม่ดี

2
00:00:05,710 --> 00:00:10,780
วิธีการหรือตัวสร้างเป็นเพราะผู้เรียกผ่านการโต้แย้งที่ผิดกฎหมายหรือเรียกวิธีการนั้น

3
00:00:10,780 --> 00:00:11,410
เกี่ยวกับเวลา

4
00:00:15,470 --> 00:00:20,090
เมื่อดูโค้ดแล้ว ฉันไม่สามารถนึกถึงข้อโต้แย้งที่ผิดกฎหมายใดๆ ที่ผู้ใช้อาจส่งผ่านโดยที่ยังไม่ได้ส่ง

5
00:00:20,090 --> 00:00:23,900
คิดเป็นเนื่องจาก Constructor ไม่ได้รับพารามิเตอร์ใดๆ

6
00:00:23,900 --> 00:00:26,210
ดังนั้นจึงไม่มีอะไรให้ตรวจสอบและได้ยินจริงๆ

7
00:00:26,210 --> 00:00:31,820
ถ้าผู้ใช้ส่งผ่านค่า null แทนที่จะเป็นวัตถุจริง รหัสจะส่งตัวชี้ค่า null แล้ว

8
00:00:31,820 --> 00:00:32,390
ข้อยกเว้น

9
00:00:32,659 --> 00:00:35,770
ดังนั้นการยกเว้นข้อโต้แย้งทางกฎหมายจึงถือเป็นเรื่องซ้ำซ้อน

10
00:00:36,590 --> 00:00:40,130
อาร์กิวเมนต์เดียวกันนี้สามารถสร้างขึ้นสำหรับการติดต่อโฆษณาและลบผู้ติดต่อได้

11
00:00:44,310 --> 00:00:46,300
แล้วข้อยกเว้นของรัฐที่ผิดกฎหมายล่ะ?

12
00:00:46,830 --> 00:00:51,180
โปรดจำไว้ว่าข้อยกเว้นที่ผิดกฎหมายเกิดขึ้นเมื่อวัตถุเรียกใช้เมธอดของมันในเวลาที่ไม่ดี

13
00:00:51,690 --> 00:00:53,000
แล้วการติดต่อโฆษณาล่ะ?

14
00:00:53,610 --> 00:00:58,250
หากมีจำนวนผู้ติดต่อสูงสุดที่คุณสามารถจัดเก็บได้ คุณก็อาจสร้างสถานะที่ผิดกฎหมายได้

15
00:00:58,260 --> 00:01:00,420
ข้อยกเว้นสำหรับสถานการณ์เฉพาะนั้น

16
00:01:00,780 --> 00:01:05,340
แต่หากย้อนกลับไปอ่านข้อกำหนดก็ไม่จำกัดจำนวนผู้ติดต่อนั่นเอง

17
00:01:05,340 --> 00:01:05,880
คุณสามารถเพิ่มได้

18
00:01:07,810 --> 00:01:13,210
แม้ว่าวัตถุจะไม่อยู่ในสถานะที่ถูกต้องที่จะโทรหรือลบผู้ติดต่อหากชาวอิสราเอล วัตถุนั้นว่างเปล่า

19
00:01:13,630 --> 00:01:20,020
หากไม่มีผู้ติดต่อที่จะลบในตอนนี้ รายการอาร์เรย์จะมีเมธอดว่างที่จะคืนค่าเป็นจริงหากมี

20
00:01:20,020 --> 00:01:20,800
ไม่มีองค์ประกอบ

21
00:01:26,950 --> 00:01:28,840
ดังนั้นเราจะตรวจสอบว่ามีการติดต่อหรือไม่

22
00:01:31,300 --> 00:01:32,230
นั่นว่างเปล่า

23
00:01:35,070 --> 00:01:37,950
และในกรณีเช่นนี้จะโยนสิ่งผิดกฎหมายใหม่ -- ข้อยกเว้น

24
00:01:41,330 --> 00:01:44,600
คุณไม่สามารถเรียกใช้วิธีการลบได้หากไม่มีผู้ติดต่อที่จะลบ

25
00:01:50,360 --> 00:01:55,220
โอเค ฉันนึกถึงการตรวจสอบความปลอดภัยใดๆ ที่เราต้องใช้ไม่ได้แล้ว เพื่อสรุปผลที่นี่


